In any corporate work environment, there needs to be a way to allocate new work projects to personnel. One approach is to allocate the work projects on a first-in-first-out basis where the projects are assigned according to when (e.g., date, time, etc.) they were received. Another approach is to put all work projects into an electronic pool and let each person choose his/her own work project on an as-needed basis. Still another approach is to have a trained specialist manually allocate each work project based on the knowledge and experience of the personnel needed to perform various tasks in the work projects.
Each of the above approaches has a drawback. For example, the first-in-first-out approach assumes that all employees have sufficient knowledge and experience to handle all work projects, which may or may not be the case depending on the type of work projects. The electronic pool approach leaves the selection of the work projects largely to the discretion of each person, who may or may not be tempted to pass over more pressing, but somewhat complex projects in favor of simpler projects. As for having a trained specialist manually allocate the work projects, this approach has been found to be the most effective in terms of making efficient use of the knowledge and experience of the available personnel. However, in a high-volume work environment where hundreds of work projects may need to be allocated on any given day, having a trained specialist make personnel decision for each work project is far too time-consuming and labor-intensive.
Accordingly, what is needed is a way to automate the selection of personnel for work projects and to automatically allocate the work projects to the personnel. More specifically, what is needed is a way to automatically allocate the work projects to the personnel in the manner that is equitable based on the complexity level of the work projects and the level of knowledge and experience of the personnel.